﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sekretar.DataLayer;

namespace Sekretar.Repository
{
    public class RRazlogPrimanja : BaseRepository, InterfaceRepository<DataLayer.RazlogPrimanja>
    {
        public IQueryable<RazlogPrimanja> VratiSve()
        {
            dc = new SekretarDataContext();
            return dc.RazlogPrimanjas;
        }

        public RazlogPrimanja Nov()
        {
            this.jeNov = true;

            RazlogPrimanja rp = new RazlogPrimanja();
            rp.Status = true;
            rp.DatumRada = Common.Tools.SqlFunkcije.VratiTrenutnoVreme();
            rp.KorisnikId = Common.Properties.Settings.Default.KorisnikId;

            return rp;
        }

        public RazlogPrimanja Izmeni(int id)
        {
            return dc.RazlogPrimanjas.SingleOrDefault(t => t.RazlogPrimanjaId == id);
        }

        public int Snimi(RazlogPrimanja t)
        {
            if (this.jeNov)
            {
                dc.RazlogPrimanjas.InsertOnSubmit(t);
            }

            dc.SubmitChanges();
            return t.RazlogPrimanjaId;
        }

        public void Brisi(int id)
        {
            dc.RazlogPrimanjas.DeleteOnSubmit(dc.RazlogPrimanjas.SingleOrDefault(c => c.RazlogPrimanjaId == id));
            dc.SubmitChanges();
        }

        public IQueryable<RazlogPrimanja> VratiSveAktivne()
        {
            dc = new DataLayer.SekretarDataContext();
            return dc.RazlogPrimanjas.Where(c => c.Status == true);
        }
    }
}
